@page "/pdf/rtl-text"
@inject Microsoft.JSInterop.IJSRuntime JS
@using System.IO
@using Syncfusion.Blazor.Buttons
@inject Microsoft.AspNetCore.Hosting.IWebHostEnvironment hostingEnvironment
@inherits SampleBaseComponent;
@*Hidden:Lines*@

@using BlazorDemos.Data.FileFormats.PDF

@*End:Hidden*@

<SampleDescription>
    <p>This sample demonstrates drawing right-to-left language text in the PDF document. It is possible to draw RTL languages such as Arabic, Hebrew, Persian, Urdu and more.</p>
</SampleDescription>
<ActionDescription>
   <p>It is also possible to draw<a target='_blank' href='https://help.syncfusion.com/file-formats/pdf/working-with-text#embedding-fonts-and-working-with-unicode-text'> Unicode text</a>. More information about drawing text can be found in this documentation <a target='_blank' href='https://help.syncfusion.com/file-formats/pdf/working-with-text'>section.</a></p>
</ActionDescription>

<div class="control-section">
    <p style="font-weight:normal">Click the button to view a PDF document generated by Essential PDF. Please note that Adobe Reader or its equivalent is required to view the resultant document. </p>

    <div class="button-section">
        <div id="button-control">
            <div class="row">
                <div>
                    <SfButton @onclick="GeneratePDF">Generate PDF</SfButton>
                </div>
            </div>
        </div>
    </div>
</div>

<style>
    .radio-control {
        margin: 0 0 5% 0;
    }

    .control-section .row {
        margin: 10px 0;
    }
</style>

@code {

     
    /// <summary>
    /// Create and download the simple PDF document
    ///<summary>
    protected async void GeneratePDF(MouseEventArgs args)
    {        
        RTLTextService service= new RTLTextService(hostingEnvironment);
        MemoryStream documentStream = service.CreatePdfDocument();
        await JS.SaveAs("RTLText.pdf", documentStream.ToArray());
    }
}
